From 4e7e00649a771714859a0f4b8b975f2e5662aa42 Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Fri, 9 Sep 2005 16:17:17 +0000 Subject: [PATCH] cleanups --- tools/python/xen/lowlevel/xc/xc.c | 2 +- xen/arch/x86/dom0_ops.c | 12 ++++---- xen/arch/x86/setup.c | 51 +++++++++++++++---------------- xen/arch/x86/vmx.c | 4 +-- xen/common/kernel.c | 11 +++---- xen/include/asm-x86/vmx.h | 2 ++ xen/include/public/version.h | 8 ++--- 7 files changed, 44 insertions(+), 46 deletions(-) diff --git a/tools/python/xen/lowlevel/xc/xc.c b/tools/python/xen/lowlevel/xc/xc.c index 113a57b2f9..7f398978eb 100644 --- a/tools/python/xen/lowlevel/xc/xc.c +++ b/tools/python/xen/lowlevel/xc/xc.c @@ -756,7 +756,7 @@ static PyObject *pyxc_xeninfo(PyObject *self, "xen_major", xen_version >> 16, "xen_minor", (xen_version & 0xffff), "xen_extra", xen_extra, - "xen_caps", xen_caps.caps, + "xen_caps", xen_caps, "xen_params", str, "xen_changeset", xen_chgset, "cc_compiler", xen_cc.compiler, diff --git a/xen/arch/x86/dom0_ops.c b/xen/arch/x86/dom0_ops.c index 936120dcad..983fc01b28 100644 --- a/xen/arch/x86/dom0_ops.c +++ b/xen/arch/x86/dom0_ops.c @@ -35,13 +35,13 @@ static unsigned long msr_hi; static void write_msr_for(void *unused) { - if (((1 << current->processor) & msr_cpu_mask)) + if ( ((1 << current->processor) & msr_cpu_mask) ) (void)wrmsr_user(msr_addr, msr_lo, msr_hi); } static void read_msr_for(void *unused) { - if (((1 << current->processor) & msr_cpu_mask)) + if ( ((1 << current->processor) & msr_cpu_mask) ) (void)rdmsr_user(msr_addr, msr_lo, msr_hi); } @@ -189,11 +189,11 @@ long arch_do_dom0_op(dom0_op_t *op, dom0_op_t *u_dom0_op) pi->total_pages = max_page; pi->free_pages = avail_domheap_pages(); pi->cpu_khz = cpu_khz; - memset( pi->hw_cap, 0, sizeof(pi->hw_cap) ); - memcpy( pi->hw_cap, boot_cpu_data.x86_capability, NCAPINTS*4 ); + memset(pi->hw_cap, 0, sizeof(pi->hw_cap)); + memcpy(pi->hw_cap, boot_cpu_data.x86_capability, NCAPINTS*4); ret = 0; - if( copy_to_user(u_dom0_op, op, sizeof(*op)) ) - ret = -EINVAL; + if ( copy_to_user(u_dom0_op, op, sizeof(*op)) ) + ret = -EFAULT; } break; diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index 8ce28cbed4..36ba740cd7 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -93,8 +93,6 @@ unsigned long mmu_cr4_features = X86_CR4_PSE; #endif EXPORT_SYMBOL(mmu_cr4_features); -int hvm_enabled = 0; /* can we run unmodified guests */ - struct vcpu *idle_task[NR_CPUS] = { &idle0_vcpu }; int acpi_disabled; @@ -533,43 +531,44 @@ void __init __start_xen(multiboot_info_t *mbi) startup_cpu_idle_loop(); } -void arch_get_xen_caps(xen_capabilities_info_t *info) +void arch_get_xen_caps(xen_capabilities_info_t info) { - char *p=info->caps; + char *p = info; - *p=0; +#if defined(CONFIG_X86_32) && !defined(CONFIG_X86_PAE) -#ifdef CONFIG_X86_32 + p += sprintf(p, "xen_%d.%d_x86_32 ", XEN_VERSION, XEN_SUBVERSION); + if ( hvm_enabled ) + p += sprintf(p, "hvm_%d.%d_x86_32 ", XEN_VERSION, XEN_SUBVERSION); -#ifndef CONFIG_X86_PAE - p+=sprintf(p,"xen_%d.%d_x86_32 ",XEN_VERSION,XEN_SUBVERSION); - if(hvm_enabled) - { - p+=sprintf(p,"hvm_%d.%d_x86_32 ",XEN_VERSION,XEN_SUBVERSION); - } -#else - p+=sprintf(p,"xen_%d.%d_x86_32p ",XEN_VERSION,XEN_SUBVERSION); - if(hvm_enabled) +#elif defined(CONFIG_X86_32) && defined(CONFIG_X86_PAE) + + p += sprintf(p, "xen_%d.%d_x86_32p ", XEN_VERSION, XEN_SUBVERSION); + if ( hvm_enabled ) { - //p+=sprintf(p,"hvm_%d.%d_x86_32 ",XEN_VERSION,XEN_SUBVERSION); - //p+=sprintf(p,"hvm_%d.%d_x86_32p ",XEN_VERSION,XEN_SUBVERSION); + //p += sprintf(p, "hvm_%d.%d_x86_32 ", XEN_VERSION, XEN_SUBVERSION); + //p += sprintf(p, "hvm_%d.%d_x86_32p ", XEN_VERSION, XEN_SUBVERSION); } -#endif +#elif defined(CONFIG_X86_64) -#else /* !CONFIG_X86_32 */ - p+=sprintf(p,"xen_%d.%d_x86_64 ",XEN_VERSION,XEN_SUBVERSION); - if(hvm_enabled) + p += sprintf(p, "xen_%d.%d_x86_64 ", XEN_VERSION, XEN_SUBVERSION); + if ( hvm_enabled ) { - //p+=sprintf(p,"hvm_%d.%d_x86_32 ",XEN_VERSION,XEN_SUBVERSION); - //p+=sprintf(p,"hvm_%d.%d_x86_32p ",XEN_VERSION,XEN_SUBVERSION); - p+=sprintf(p,"hvm_%d.%d_x86_64 ",XEN_VERSION,XEN_SUBVERSION); + //p += sprintf(p, "hvm_%d.%d_x86_32 ", XEN_VERSION, XEN_SUBVERSION); + //p += sprintf(p, "hvm_%d.%d_x86_32p ", XEN_VERSION, XEN_SUBVERSION); + p += sprintf(p, "hvm_%d.%d_x86_64 ", XEN_VERSION, XEN_SUBVERSION); } + +#else + + p++; + #endif - BUG_ON((p-info->caps)>sizeof(*info)); + *(p-1) = 0; - if(p>info->caps) *(p-1) = 0; + BUG_ON((p - info) > sizeof(info)); } /* diff --git a/xen/arch/x86/vmx.c b/xen/arch/x86/vmx.c index 94700d9b02..23efd4fd5f 100644 --- a/xen/arch/x86/vmx.c +++ b/xen/arch/x86/vmx.c @@ -44,14 +44,14 @@ #include +int hvm_enabled; + #ifdef CONFIG_VMX int vmcs_size; unsigned int opt_vmx_debug_level = 0; integer_param("vmx_debug", opt_vmx_debug_level); -extern int hvm_enabled; - #ifdef TRACE_BUFFER static unsigned long trace_values[NR_CPUS][4]; #define TRACE_VMEXIT(index,value) trace_values[current->processor][index]=value diff --git a/xen/common/kernel.c b/xen/common/kernel.c index 82df04493d..c0fee4298b 100644 --- a/xen/common/kernel.c +++ b/xen/common/kernel.c @@ -114,12 +114,12 @@ long do_xen_version(int cmd, void *arg) case XENVER_capabilities: { xen_capabilities_info_t info; - extern void arch_get_xen_caps(xen_capabilities_info_t * info); - - memset(&info, 0, sizeof(info)); - arch_get_xen_caps(&info); + extern void arch_get_xen_caps(xen_capabilities_info_t info); - if ( copy_to_user(arg, &info, sizeof(info)) ) + memset(info, 0, sizeof(info)); + arch_get_xen_caps(info); + + if ( copy_to_user(arg, info, sizeof(info)) ) return -EFAULT; return 0; } @@ -127,7 +127,6 @@ long do_xen_version(int cmd, void *arg) case XENVER_parameters: { xen_parameters_info_t info = { .virt_start = HYPERVISOR_VIRT_START }; - if ( copy_to_user(arg, &info, sizeof(info)) ) return -EFAULT; return 0; diff --git a/xen/include/asm-x86/vmx.h b/xen/include/asm-x86/vmx.h index c03559849f..ee33d5a8d3 100644 --- a/xen/include/asm-x86/vmx.h +++ b/xen/include/asm-x86/vmx.h @@ -28,6 +28,8 @@ #include +extern int hvm_enabled; + extern void vmx_asm_vmexit_handler(struct cpu_user_regs); extern void vmx_asm_do_resume(void); extern void vmx_asm_do_launch(void); diff --git a/xen/include/public/version.h b/xen/include/public/version.h index bc3ced3660..f2a0c962ca 100644 --- a/xen/include/public/version.h +++ b/xen/include/public/version.h @@ -29,16 +29,14 @@ typedef struct xen_compile_info { } xen_compile_info_t; #define XENVER_capabilities 3 -typedef struct xen_capabilities_info { - char caps[1024]; -} xen_capabilities_info_t; +typedef char xen_capabilities_info_t[1024]; #define XENVER_changeset 4 typedef char xen_changeset_info_t[64]; #define XENVER_parameters 5 -typedef struct xen_paramaters_info { -unsigned long virt_start; +typedef struct xen_parameters_info { + unsigned long virt_start; } xen_parameters_info_t; #endif /* __XEN_PUBLIC_VERSION_H__ */ -- 2.30.2